--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
libs/able/able/advertising.py master (8b8a5035) Text, 10.84 KB
T8b949e"""BLE advertise operations."""
Tff7b72from T7ee787abc Tff7b72import Te6edf3abstractmethod
Tff7b72from T7ee787dataclasses Tff7b72import Te6edf3dataclass
Tff7b72from T7ee787enum Tff7b72import Te6edf3IntEnum
Tff7b72from T7ee787typing Tff7b72import Te6edf3ListTb4b4b4, Te6edf3OptionalTb4b4b4, Te6edf3Union
Tff7b72from T7ee787jnius Tff7b72import Te6edf3JavaExceptionTb4b4b4, Te6edf3autoclass
Tff7b72from T7ee787kivyT7ee787.T7ee787event Tff7b72import Te6edf3EventDispatcher
Tff7b72from T7ee787ableT7ee787.T7ee787androidT7ee787.T7ee787dispatcher Tff7b72import Te6edf3BluetoothDispatcher
Tff7b72from T7ee787ableT7ee787.T7ee787androidT7ee787.T7ee787jni Tff7b72import Te6edf3PythonBluetoothAdvertiser
Tff7b72from T7ee787ableT7ee787.T7ee787utils Tff7b72import Te6edf3force_convertible_to_java_array
Te6edf3AdvertiseDataBuilder Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6ffandroid.bluetooth.le.AdvertiseData$BuilderTa5d6ff'Tb4b4b4)
Te6edf3AdvertisingSet Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6ffandroid.bluetooth.le.AdvertisingSetTa5d6ff'Tb4b4b4)
Te6edf3AdvertisingSetParametersBuilder Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6ffandroid.bluetooth.le.AdvertisingSetParameters$BuilderTa5d6ff'Tb4b4b4)
Te6edf3AndroidAdvertiseData Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6ffandroid.bluetooth.le.AdvertiseDataTa5d6ff'Tb4b4b4)
Te6edf3BluetoothLeAdvertiser Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6ffandroid.bluetooth.le.BluetoothLeAdvertiserTa5d6ff'Tb4b4b4)
Te6edf3ParcelUuid Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6ffandroid.os.ParcelUuidTa5d6ff'Tb4b4b4)
Te6edf3BLEAdvertiser Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6fforg.able.BLEAdvertiserTa5d6ff'Tb4b4b4)
Tff7b72class T56d364IntervalTb4b4b4(Te6edf3IntEnumTb4b4b4)Tb4b4b4:
T8b949e"""Advertising interval constants.
https://developer.android.com/reference/android/bluetooth/le/AdvertisingSetParameters#INTERVAL_HIGH
"""
Te6edf3MIN Tff7b72= T79c0ff160 T8b949e#: Minimum value for advertising interval, around every 100ms
Te6edf3MEDIUM Tff7b72= T79c0ff400 T8b949e#: Advertise on medium frequency, around every 250ms
Te6edf3HIGH Tff7b72= T79c0ff1600 T8b949e#: Advertise on low frequency, around every 1000ms
Te6edf3MAX Tff7b72= T79c0ff16777215 T8b949e#: Maximum value for advertising interval
Tff7b72class T56d364TXPowerTb4b4b4(Te6edf3IntEnumTb4b4b4)Tb4b4b4:
T8b949e"""Advertising transmission (TX) power level constants.
https://developer.android.com/reference/android/bluetooth/le/AdvertisingSetParameters#TX_POWER_HIGH
"""
Te6edf3MIN Tff7b72= Tff7b72-T79c0ff127 T8b949e#: Minimum value for TX power
Te6edf3ULTRA_LOW Tff7b72= Tff7b72-T79c0ff21 T8b949e#: Advertise using the lowest TX power level
Te6edf3LOW Tff7b72= Tff7b72-T79c0ff15 T8b949e#: Advertise using the low TX power level
Te6edf3MEDIUM Tff7b72= Tff7b72-T79c0ff7 T8b949e#: Advertise using the medium TX power level
Te6edf3MAX Tff7b72= T79c0ff1 T8b949e#: Maximum value for TX power
Tff7b72class T56d364StatusTb4b4b4:
T8b949e"""Advertising operation status constants.
https://developer.android.com/reference/android/bluetooth/le/AdvertisingSetCallback#constants
"""
Te6edf3SUCCESS Tff7b72= T79c0ff0
Te6edf3DATA_TOO_LARGE Tff7b72= T79c0ff1
Te6edf3TOO_MANY_ADVERTISERS Tff7b72= T79c0ff2
Te6edf3ALREADY_STARTED Tff7b72= T79c0ff3
Te6edf3INTERNAL_ERROR Tff7b72= T79c0ff4
Te6edf3FEATURE_UNSUPPORTED Tff7b72= T79c0ff5
Tf0883e@dataclass
Tff7b72class T56d364ADStructureTb4b4b4:
Tf0883e@abstractmethod
Tff7b72def Td2a8ffadd_payloadTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3builderTb4b4b4: Te6edf3AdvertiseDataBuilderTb4b4b4)Tb4b4b4:
Tff7b72pass
Tff7b72class T56d364DeviceNameTb4b4b4(Te6edf3ADStructureTb4b4b4)Tb4b4b4:
T8b949e"""Include device name (complete local name) in advertise packet."""
Tff7b72def Td2a8ffadd_payloadTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3builderTb4b4b4)Tb4b4b4:
Te6edf3builderTff7b72.Td2a8ffsetIncludeDeviceNameTb4b4b4(Tff7b72TrueTb4b4b4)
Tff7b72class T56d364TXPowerLevelTb4b4b4(Te6edf3ADStructureTb4b4b4)Tb4b4b4:
T8b949e"""Include transmission power level in the advertise packet."""
Tff7b72def Td2a8ffadd_payloadTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3builderTb4b4b4)Tb4b4b4:
Te6edf3builderTff7b72.Td2a8ffsetIncludeTxPowerLevelTb4b4b4(Tff7b72TrueTb4b4b4)
Tf0883e@dataclass
Tff7b72class T56d364ServiceUUIDTb4b4b4(Te6edf3ADStructureTb4b4b4)Tb4b4b4:
T8b949e"""Service UUID to advertise.
:param uid: UUID to be advertised
"""
Te6edf3uidTb4b4b4: Tffa657str
Tff7b72def Td2a8ffadd_payloadTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3builderTb4b4b4)Tb4b4b4:
Te6edf3builderTff7b72.Td2a8ffaddServiceUuidTb4b4b4(
Te6edf3ParcelUuidTff7b72.Td2a8fffromStringTb4b4b4(Tff7b72selfTff7b72.Td2a8ffuidTb4b4b4)
Tb4b4b4)
Tf0883e@dataclass
Tff7b72class T56d364ServiceDataTb4b4b4(Te6edf3ADStructureTb4b4b4)Tb4b4b4:
T8b949e"""Service data to advertise.
:param uid: UUID of the service the data is associated with
:param data: Service data
"""
Te6edf3uidTb4b4b4: Tffa657str
Te6edf3dataTb4b4b4: Te6edf3UnionTb4b4b4[Tffa657listTb4b4b4, Tffa657tupleTb4b4b4, Tffa657bytesTb4b4b4, Tffa657bytearrayTb4b4b4]
Tff7b72def Td2a8ffadd_payloadTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3builderTb4b4b4)Tb4b4b4:
Te6edf3builderTff7b72.Td2a8ffaddServiceDataTb4b4b4(
Te6edf3ParcelUuidTff7b72.Td2a8fffromStringTb4b4b4(Tff7b72selfTff7b72.Td2a8ffuidTb4b4b4)Tb4b4b4,
Te6edf3force_convertible_to_java_arrayTb4b4b4(Tff7b72selfTff7b72.Td2a8ffdataTb4b4b4)
Tb4b4b4)
Tf0883e@dataclass
Tff7b72class T56d364ManufacturerDataTb4b4b4(Te6edf3ADStructureTb4b4b4)Tb4b4b4:
T8b949e"""Manufacturer specific data to advertise.
:param id: Manufacturer ID
:param data: Manufacturer specific data
"""
Tffa657idTb4b4b4: Tffa657int
Te6edf3dataTb4b4b4: Te6edf3UnionTb4b4b4[Tffa657listTb4b4b4, Tffa657tupleTb4b4b4, Tffa657bytesTb4b4b4, Tffa657bytearrayTb4b4b4]
Tff7b72def Td2a8ffadd_payloadTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3builderTb4b4b4)Tb4b4b4:
Te6edf3builderTff7b72.Td2a8ffaddManufacturerDataTb4b4b4(
Tff7b72selfTff7b72.Td2a8ffidTb4b4b4,
Te6edf3force_convertible_to_java_arrayTb4b4b4(Tff7b72selfTff7b72.Td2a8ffdataTb4b4b4)
Tb4b4b4)
Tff7b72class T56d364AdvertiseDataTb4b4b4:
T8b949e"""Builder for data payload to be advertised.
:param payload: List of AD structures to include in advertisement
>>> AdvertiseData(DeviceName(), ManufacturerData(10, b'specific data'))
[DeviceName(), ManufacturerData(id=10, data=b'specific data')]
"""
Tff7b72def Tff7b72__init__Tb4b4b4(Tff7b72selfTb4b4b4, Tff7b72*Te6edf3payloadTb4b4b4: Te6edf3ListTb4b4b4[Te6edf3ADStructureTb4b4b4]Tb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ffpayload Tff7b72= Te6edf3payload
Tff7b72selfTff7b72.Td2a8ffdata Tff7b72= Tff7b72selfTff7b72.Td2a8ffbuildTb4b4b4(Tb4b4b4)
Tff7b72def Tff7b72__repr__Tb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
Te6edf3sections Tff7b72= Ta5d6ff"Ta5d6ff, Ta5d6ff"Tff7b72.Td2a8ffjoinTb4b4b4(Tffa657reprTb4b4b4(Te6edf3adTb4b4b4) Tff7b72for Te6edf3ad Tff7b72in Tff7b72selfTff7b72.Td2a8ffpayloadTb4b4b4)
Tff7b72return Ta5d6fffTa5d6ff"Ta5d6ff[Tffd700{Te6edf3sectionsTffd700}Ta5d6ff]Ta5d6ff"
Tff7b72def Td2a8ffbuildTb4b4b4(Tff7b72selfTb4b4b4) Tff7b72-Tff7b72> Te6edf3AndroidAdvertiseDataTb4b4b4:
Te6edf3builder Tff7b72= Te6edf3AdvertiseDataBuilderTb4b4b4(Tb4b4b4)
Tff7b72for Te6edf3ad Tff7b72in Tff7b72selfTff7b72.Td2a8ffpayloadTb4b4b4:
Te6edf3adTff7b72.Td2a8ffadd_payloadTb4b4b4(Te6edf3builderTb4b4b4)
Tff7b72return Te6edf3builderTff7b72.Td2a8ffbuildTb4b4b4(Tb4b4b4)
Tff7b72class T56d364AdvertiserTb4b4b4(Te6edf3EventDispatcherTb4b4b4)Tb4b4b4:
T8b949e"""Base class for BLE advertise operations.
:param ble: BLE interface instance
:param data: Advertisement data to be broadcasted
:param scan_data: Scan response associated with the advertisement data
:param interval: Advertising interval
`<https://developer.android.com/reference/android/bluetooth/le/AdvertisingSetParameters.Builder#setInterval(int)>`_
:param tx_power: Transmission power level
`<https://developer.android.com/reference/android/bluetooth/le/AdvertisingSetParameters.Builder#setTxPowerLevel(int)>`_
>>> Advertiser(
... ble=BluetoothDispatcher(),
... data=AdvertiseData(DeviceName()),
... scan_data=AdvertiseData(TXPowerLevel()),
... interval=Interval.MIN,
... tx_power=TXPower.MAX
... ) #doctest: +ELLIPSIS
<able.advertising.Advertiser object at 0x...>
"""
Te6edf3__events__ Tff7b72= Tb4b4b4(
Ta5d6ff'Ta5d6ffon_advertising_startedTa5d6ff'Tb4b4b4,
Ta5d6ff'Ta5d6ffon_advertising_stoppedTa5d6ff'Tb4b4b4,
Ta5d6ff'Ta5d6ffon_advertising_enabledTa5d6ff'Tb4b4b4,
Ta5d6ff'Ta5d6ffon_advertising_data_setTa5d6ff'Tb4b4b4,
Ta5d6ff'Ta5d6ffon_scan_response_data_setTa5d6ff'Tb4b4b4,
Ta5d6ff'Ta5d6ffon_advertising_parameters_updatedTa5d6ff'Tb4b4b4,
Ta5d6ff'Ta5d6ffon_advertising_set_changedTa5d6ff'Tb4b4b4,
Tb4b4b4)
Tff7b72def Tff7b72__init__Tb4b4b4(
Tff7b72selfTb4b4b4,
Te6edf3bleTb4b4b4: Te6edf3BluetoothDispatcherTb4b4b4,
Te6edf3dataTb4b4b4: Te6edf3AdvertiseData Tff7b72= Tff7b72NoneTb4b4b4,
Te6edf3scan_dataTb4b4b4: Te6edf3AdvertiseData Tff7b72= Tff7b72NoneTb4b4b4,
Te6edf3intervalTb4b4b4: Tffa657int Tff7b72= Te6edf3IntervalTff7b72.Td2a8ffHIGHTb4b4b4,
Te6edf3tx_powerTb4b4b4: Tffa657int Tff7b72= Te6edf3TXPowerTff7b72.Td2a8ffMEDIUMTb4b4b4,
Tb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_ble Tff7b72= Te6edf3ble
Tff7b72selfTff7b72.Td2a8ff_data Tff7b72= Te6edf3data
Tff7b72selfTff7b72.Td2a8ff_scan_data Tff7b72= Te6edf3scan_data
Tff7b72selfTff7b72.Td2a8ff_interval Tff7b72= Te6edf3interval
Tff7b72selfTff7b72.Td2a8ff_tx_power Tff7b72= Te6edf3tx_power
Tff7b72selfTff7b72.Td2a8ff_events_interface Tff7b72= Te6edf3PythonBluetoothAdvertiserTb4b4b4(Tff7b72selfTb4b4b4)
Tff7b72selfTff7b72.Td2a8ff_advertiser Tff7b72= Te6edf3BLEAdvertiserTb4b4b4(Tff7b72selfTff7b72.Td2a8ff_events_interfaceTb4b4b4)
Tff7b72selfTff7b72.Td2a8ff_callback_set Tff7b72= Tff7b72selfTff7b72.Td2a8ff_advertiserTff7b72.Td2a8ffmCallbackSet
Tff7b72selfTff7b72.Td2a8ff_advertising_set Tff7b72= Tff7b72None
Tf0883e@property
Tff7b72def Td2a8ffdataTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
T8b949e"""
:setter: Update advertising data
:type: Optional[AdvertiseData]
"""
Tff7b72return Tff7b72selfTff7b72.Td2a8ff_data
Tf0883e@dataTff7b72.Td2a8ffsetter
Tff7b72def Td2a8ffdataTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3valueTb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_data Tff7b72= Te6edf3value
Tff7b72selfTff7b72.Td2a8ff_update_advertising_setTb4b4b4(Tb4b4b4)
Tf0883e@property
Tff7b72def Td2a8ffscan_dataTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
T8b949e"""
:setter: Update the scan response
:type: Optional[AdvertiseData]
"""
Tff7b72return Tff7b72selfTff7b72.Td2a8ff_scan_data
Tf0883e@scan_dataTff7b72.Td2a8ffsetter
Tff7b72def Td2a8ffscan_dataTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3valueTb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_scan_data Tff7b72= Te6edf3value
Tff7b72selfTff7b72.Td2a8ff_update_advertising_setTb4b4b4(Tb4b4b4)
Tf0883e@property
Tff7b72def Td2a8ffintervalTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
T8b949e"""
:setter: Update the advertising interval
:type: int
"""
Tff7b72return Tff7b72selfTff7b72.Td2a8ff_interval
Tf0883e@intervalTff7b72.Td2a8ffsetter
Tff7b72def Td2a8ffintervalTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3valueTb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_interval Tff7b72= Te6edf3value
Tff7b72selfTff7b72.Td2a8ff_update_advertising_setTb4b4b4(Tb4b4b4)
Tf0883e@property
Tff7b72def Td2a8fftx_powerTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
T8b949e"""
:setter: Update the transmission power level
:type: int
"""
Tff7b72return Tff7b72selfTff7b72.Td2a8ff_tx_power
Tf0883e@tx_powerTff7b72.Td2a8ffsetter
Tff7b72def Td2a8fftx_powerTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3valueTb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_tx_power Tff7b72= Te6edf3value
Tff7b72selfTff7b72.Td2a8ff_update_advertising_setTb4b4b4(Tb4b4b4)
Tf0883e@property
Tff7b72def Td2a8ffbluetooth_le_advertiserTb4b4b4(Tff7b72selfTb4b4b4) Tff7b72-Tff7b72> Te6edf3OptionalTb4b4b4[Te6edf3BluetoothLeAdvertiserTb4b4b4]Tb4b4b4:
Te6edf3adapter Tff7b72= Tff7b72selfTff7b72.Td2a8ff_bleTff7b72.Td2a8ffadapter
Tff7b72return Te6edf3adapter Tff7b72and Te6edf3adapterTff7b72.Td2a8ffgetBluetoothLeAdvertiserTb4b4b4(Tb4b4b4)
Tf0883e@property
Tff7b72def Td2a8ffparametersTb4b4b4(Tff7b72selfTb4b4b4) Tff7b72-Tff7b72> Te6edf3AdvertisingSetParametersBuilderTb4b4b4:
Te6edf3builder Tff7b72= Te6edf3AdvertisingSetParametersBuilderTb4b4b4(Tb4b4b4)
Te6edf3builderTff7b72.Td2a8ffsetLegacyModeTb4b4b4(Tff7b72TrueTb4b4b4) \
Tff7b72.Td2a8ffsetConnectableTb4b4b4(Tff7b72FalseTb4b4b4) \
Tff7b72.Td2a8ffsetScannableTb4b4b4(Tff7b72TrueTb4b4b4) \
Tff7b72.Td2a8ffsetIntervalTb4b4b4(Tff7b72selfTff7b72.Td2a8ff_intervalTb4b4b4) \
Tff7b72.Td2a8ffsetTxPowerLevelTb4b4b4(Tff7b72selfTff7b72.Td2a8ff_tx_powerTb4b4b4)
Tff7b72return Te6edf3builderTff7b72.Td2a8ffbuildTb4b4b4(Tb4b4b4)
Tff7b72def Td2a8ffstartTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
T8b949e"""Start advertising.
Start a system activity that allows the user to turn on Bluetooth if Bluetooth is not enabled.
"""
Tff7b72if Tff7b72not Tff7b72selfTff7b72.Td2a8ff_advertising_setTb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_bleTff7b72.Td2a8ff_start_advertisingTb4b4b4(Tff7b72selfTb4b4b4)
Tff7b72def Td2a8ffstopTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
T8b949e"""Stop advertising."""
Te6edf3advertiser Tff7b72= Tff7b72selfTff7b72.Td2a8ffbluetooth_le_advertiser
Tff7b72if Te6edf3advertiserTb4b4b4:
Te6edf3advertiserTff7b72.Td2a8ffstopAdvertisingSetTb4b4b4(Tff7b72selfTff7b72.Td2a8ff_callback_setTb4b4b4)
Tff7b72def Td2a8ffon_advertising_startedTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3advertising_setTb4b4b4: Te6edf3AdvertisingSetTb4b4b4, Te6edf3tx_powerTb4b4b4: Tffa657intTb4b4b4, Te6edf3statusTb4b4b4: Te6edf3StatusTb4b4b4)Tb4b4b4:
T8b949e"""Handler for advertising start operation (onAdvertisingSetStarted).
"""
Tff7b72def Td2a8ffon_advertising_stoppedTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3advertising_setTb4b4b4: Te6edf3AdvertisingSetTb4b4b4)Tb4b4b4:
T8b949e"""Handler for advertising stop operation (onAdvertisingSetStopped)."""
Tff7b72def Td2a8ffon_advertising_enabledTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3advertising_setTb4b4b4: Te6edf3AdvertisingSetTb4b4b4, Te6edf3enableTb4b4b4: Tffa657boolTb4b4b4, Te6edf3statusTb4b4b4: Te6edf3StatusTb4b4b4)Tb4b4b4:
T8b949e"""Handler for advertising enable/disable operation (onAdvertisingEnabled)."""
Tff7b72def Td2a8ffon_advertising_data_setTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3advertising_setTb4b4b4: Te6edf3AdvertisingSetTb4b4b4, Te6edf3statusTb4b4b4: Te6edf3StatusTb4b4b4)Tb4b4b4:
T8b949e"""Handler for data set operation (onAdvertisingDataSet)."""
Tff7b72def Td2a8ffon_scan_response_data_setTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3advertising_setTb4b4b4: Te6edf3AdvertisingSetTb4b4b4, Te6edf3statusTb4b4b4: Te6edf3StatusTb4b4b4)Tb4b4b4:
T8b949e"""Handler for scan response data set operation (onScanResponseDataSet)."""
Tff7b72def Td2a8ffon_advertising_parameters_updatedTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3advertising_setTb4b4b4: Te6edf3AdvertisingSetTb4b4b4, Te6edf3tx_powerTb4b4b4: Tffa657intTb4b4b4, Te6edf3statusTb4b4b4: Te6edf3StatusTb4b4b4)Tb4b4b4:
T8b949e"""Handler for parameters set operation (onAdvertisingParametersUpdated)."""
Tff7b72def Td2a8ffon_advertising_set_changedTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3advertising_setTb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_advertising_set Tff7b72= Te6edf3advertising_set
Tff7b72def Td2a8ff_startTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
Te6edf3advertiser Tff7b72= Tff7b72selfTff7b72.Td2a8ffbluetooth_le_advertiser
Tff7b72if Te6edf3advertiserTb4b4b4:
Tff7b72selfTff7b72.Td2a8ff_callback_set Tff7b72= Tff7b72selfTff7b72.Td2a8ff_advertiserTff7b72.Td2a8ffcreateCallbackTb4b4b4(Tb4b4b4)
Tff7b72tryTb4b4b4:
Te6edf3advertiserTff7b72.Td2a8ffstartAdvertisingSetTb4b4b4(
Tff7b72selfTff7b72.Td2a8ffparametersTb4b4b4,
Tff7b72selfTff7b72.Td2a8ff_data Tff7b72and Tff7b72selfTff7b72.Td2a8ff_dataTff7b72.Td2a8ffdataTb4b4b4,
Tff7b72selfTff7b72.Td2a8ff_scan_data Tff7b72and Tff7b72selfTff7b72.Td2a8ff_scan_dataTff7b72.Td2a8ffdataTb4b4b4,
Tff7b72NoneTb4b4b4, T8b949e# periodicParameters
Tff7b72NoneTb4b4b4, T8b949e# periodicData
Tff7b72selfTff7b72.Td2a8ff_callback_set
Tb4b4b4)
Tff7b72except Te6edf3JavaException Tff7b72as Te6edf3excTb4b4b4:
Tff7b72if Te6edf3excTff7b72.Td2a8ffclassname Tff7b72== Ta5d6ff'Ta5d6ffjava.lang.IllegalArgumentExceptionTa5d6ff' Tff7b72and \
Te6edf3excTff7b72.Td2a8ffinnermessageTff7b72.Td2a8ffendswithTb4b4b4(Ta5d6ff'Ta5d6ffdata too bigTa5d6ff'Tb4b4b4)Tb4b4b4:
Tff7b72selfTff7b72.Td2a8ffdispatchTb4b4b4(Ta5d6ff'Ta5d6ffon_advertising_startedTa5d6ff'Tb4b4b4, Tff7b72NoneTb4b4b4, T79c0ff0Tb4b4b4, Te6edf3StatusTff7b72.Td2a8ffDATA_TOO_LARGETb4b4b4)
Tff7b72raise
Tff7b72def Td2a8ff_update_advertising_setTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
Te6edf3advertising_set Tff7b72= Tff7b72selfTff7b72.Td2a8ff_advertising_set
Tff7b72if Te6edf3advertising_setTb4b4b4:
Te6edf3advertising_setTff7b72.Td2a8ffsetAdvertisingParametersTb4b4b4(Tff7b72selfTff7b72.Td2a8ffparametersTb4b4b4)
Te6edf3advertising_setTff7b72.Td2a8ffsetScanResponseDataTb4b4b4(Tff7b72selfTff7b72.Td2a8ff_scan_data Tff7b72and Tff7b72selfTff7b72.Td2a8ff_scan_dataTff7b72.Td2a8ffdataTb4b4b4)
Te6edf3advertising_setTff7b72.Td2a8ffsetAdvertisingDataTb4b4b4(Tff7b72selfTff7b72.Td2a8ff_data Tff7b72and Tff7b72selfTff7b72.Td2a8ff_dataTff7b72.Td2a8ffdataTb4b4b4)
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────